#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>

QT_BEGIN_NAMESPACE
namespace Ui { class Widget; }
QT_END_NAMESPACE

class Widget : public QWidget
{
    Q_OBJECT

public:
    Widget(QWidget *parent = nullptr);
    ~Widget();

    void handleClose();

    void handleChangeTitle();

    void handleChangeTitle_ui();

    void handleMySignalButton();


//自定义信号
signals:
    void mySignals(const QString& str1, const QString& str2);

    void mySignal1();
    void mySignal2();
    void mySignal3();

//槽函数
private slots:
    void on_uiChangeTitle_clicked();

    //自定义信号和槽函数的参数类型必须一致，个数可以不一致，但信号的参数要比槽函数的个数多
    //也就是槽一定要被信号包含，槽函数的参数实际上是由注册的信号来传递的，槽函数会按照顺序，拿到信号的前n个参数 -- 一个槽函数，可能会绑定到多个信号
    void handleMySignal(const QString& str);

    void mySlot1();
    void mySlot2();
    void mySlot3();


private:
    Ui::Widget *ui;

};
#endif // WIDGET_H
